package rpcx_label_center

import (
	"time"
)

// 行为分析上报结果示例
type ReqIotBehaviorResultsRecDeviceTag struct {
	DeviceId  string    `json:"DeviceId"`
	TimeStart time.Time `json:"TimeStart"`

	BehaviorResults []struct {
		DeviceName   string `json:"DeviceName"`
		SerialNumber string `json:"SerialNumber"`
		DeviceAddr   string `json:"DeviceAddr"`
		DeviceAddr0  string `json:"DeviceAddr0"`
		DeviceAddr1  string `json:"DeviceAddr1"`
		ChannelID    string `json:"ChannelId"`
		IPCAddr      string `json:"IPCAddr"`
		ChannelName  string `json:"ChannelName"`
		ChannelNum   string `json:"ChannelNum"`
		IPCSerialNum string `json:"IPCSerialNum"`
		AlarmType    int    `json:"AlarmType"`
		AlarmID      int    `json:"AlarmId"`
		ReportRate   int    `json:"ReportRate"`
		Timestamp    int64  `json:"Timestamp"`
		BigImageURL  string `json:"BigImageURL"`
		BigImage     struct {
			ImageType string `json:"ImageType"`
			Image     string `json:"Image"`
		} `json:"BigImage"`
		PersonNum      int    `json:"PersonNum"`
		EventNum       int    `json:"EventNum"`
		AreaID         string `json:"AreaId"`
		AlarmVideoName string `json:"AlarmVideoName"`
		AlarmVideoURL  string `json:"AlarmVideoURL"`
		LeftTopX       int    `json:"LeftTopX"`
		LeftTopY       int    `json:"LeftTopY"`
		RightBtmX      int    `json:"RightBtmX"`
		RightBtmY      int    `json:"RightBtmY"`
		PlateNo        string `json:"PlateNo"`
	} `json:"BehaviorResults"`
}

// 车辆驶入驶出上报结果示例
type ReqIotParkSpaceResultsRecDeviceTag struct {
	DeviceId  string    `json:"DeviceId"`
	TimeStart time.Time `json:"TimeStart"`

	ParkSpaceResults []struct {
		DeviceName      string `json:"DeviceName"`
		DeviceAddr      string `json:"DeviceAddr"`
		SerialNumber    string `json:"SerialNumber"`
		IPCSerialNum    string `json:"IPCSerialNum"`
		IPCAddr         string `json:"IPCAddr"`
		ChannelID       string `json:"ChannelId"`
		ChannelName     string `json:"ChannelName"`
		ChannelNum      string `json:"ChannelNum"`
		CapType         int    `json:"CapType"`
		AlarmType       int    `json:"AlarmType"`
		CapID           int    `json:"CapId"`
		DriveIntoStatus int    `json:"DriveIntoStatus"`
		AreaID          string `json:"AreaId"`
		Timestamp       int64  `json:"Timestamp"`
		BigImageURL     string `json:"BigImageURL"`
		BigImage        struct {
			ImageType string `json:"ImageType"`
			Image     string `json:"Image"`
		} `json:"BigImage"`
		PlateImageURL string `json:"PlateImageURL"`
		PlateImage    struct {
			ImageType string `json:"ImageType"`
			Image     string `json:"Image"`
		} `json:"PlateImage"`
		LeftTopX         int    `json:"LeftTopX"`
		LeftTopY         int    `json:"LeftTopY"`
		RightBtmX        int    `json:"RightBtmX"`
		RightBtmY        int    `json:"RightBtmY"`
		PlateNO          string `json:"PlateNO"`
		PlateReliability int    `json:"PlateReliability"`
		PlateColor       int    `json:"PlateColor"`
		PlateType        int    `json:"PlateType"`
	} `json:"ParkSpaceResults"`
}

// 车辆驶入驶出上报结果示例
type ReqIotRecDeviceTag struct {
	DeviceId string `json:"DeviceId"`
	IdScheme int64  `json:"IdScheme"` //方案ID

	TimeStart time.Time `json:"TimeStart"`
	TimeEnd   time.Time `json:"TimeEnd"`

	Frame Frame `json:"Frame"`
}
